package com.ruoyi.sl.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 车间工资对象 sl_month_ws
 * 
 * @author admin
 * @date 2024-06-16
 */
public class SlMonthWs extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long wsmpayId;

    /** 用户名 */
    private String userName;

    /** 昵称 */
    @Excel(name = "用户")
    private String userNick;

    /** $column.columnComment */
    private Long moduleId;

    /** $column.columnComment */
    private Long workshopId;

    /** $column.columnComment */
    private Long gprocessId;

    /** 部门 */
    private Long deptId;

    /** 年 */
    @Excel(name = "年")
    private String wsmpayYear;

    /** 月 */
    @Excel(name = "月")
    private String wsmpayMonth;

    /** 开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "开始日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date wsmpayStart;

    /** 结束日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date wsmpayEnd;

    /** 底薪 */
    @Excel(name = "底薪")
    private BigDecimal basicSalary;

    /** 职级 */
    @Excel(name = "职级")
    private BigDecimal levelPay;

    /** 岗薪 */
    @Excel(name = "岗薪")
    private BigDecimal postPay;

    /** 职称 */
    @Excel(name = "职称")
    private BigDecimal gradePay;

    /** 学历 */
    @Excel(name = "学历")
    private BigDecimal educationPay;

    /** 考勤补贴 */
    @Excel(name = "考勤补贴")
    private BigDecimal workAllowance;

    /** 个人绩效比例 */
    private BigDecimal personalPerformance;

    /** 部门绩效比例 */
    private BigDecimal deptPerformance;

    /** 每月固定 */
    @Excel(name = "每月固定")
    private BigDecimal fixedSalary;

    /** 全面薪酬 */
    @Excel(name = "全面薪酬")
    private BigDecimal totalReward;

    /** 工龄 */
    private Integer workingAge;

    /** 工龄工资基数 */
    private BigDecimal ageBase;

    /** 出勤工邻工资（含绩效） */
    @Excel(name = "工龄工资")
    private BigDecimal ageAllpay;

    /** 出勤工龄工资 */
    private BigDecimal agePay;

    /** 餐补 */
    @Excel(name = "餐补")
    private BigDecimal mealAllowance;

    /** 餐补基数 */
    private BigDecimal mealBase;

    /** 高温补贴 */
    @Excel(name = "高温补贴")
    private BigDecimal highTemperature;

    /** 早班次数 */
    private Integer earlyNum;

    /** 早班补助基数 */
    private BigDecimal earlyBase;

    /** 早班补助 */
    @Excel(name = "早班补助")
    private BigDecimal earlyShift;

    /** 晚班次数 */
    private Integer nightNum;

    /** 晚班补助基数 */
    private BigDecimal nightBase;

    /** 晚班补助 */
    @Excel(name = "晚班补助")
    private BigDecimal nightShift;

    /** 加班补助（含绩效） */
    @Excel(name = "加班补助")
    private BigDecimal overtimeAllallowance;

    /** 加班补助 */
    private BigDecimal overtimeAllowance;

    /** 应发工资 */
    @Excel(name = "应发工资")
    private BigDecimal wagePayable;

    /** 公积金 */
    @Excel(name = "公积金")
    private BigDecimal providentFund;

    /** 社保 */
    @Excel(name = "社保")
    private BigDecimal socialSecurity;

    /** 代扣税 */
    @Excel(name = "代扣税")
    private BigDecimal taxDeduction;

    /** 每月实发 */
    @Excel(name = "每月实发")
    private BigDecimal netSalary;

    /** 满勤天数 */
    @Excel(name = "满勤天数")
    private BigDecimal fullDay;

    /** 出勤天数 */
    @Excel(name = "出勤天数")
    private BigDecimal attendanceDay;

    /** 缺勤天数 */
    @Excel(name = "缺勤天数")
    private BigDecimal absenceDay;

    /** 出勤固定 */
    @Excel(name = "出勤固定")
    private BigDecimal attendancePay;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date wsmpayDate;

    /** 职级 */
    private Long levelId;

    /** 计薪方式 */
    private Long ssmId;

    /** 0历史1当前 */
    private String isHistory;

    /** 扣款金额 */
    @Excel(name = "扣款金额")
    private BigDecimal dmAmount;

    /** 其他补助 */
    @Excel(name = "其他补助")
    private BigDecimal otherSubsidy;

    private SlWsperformance slWsperformance;

    public BigDecimal getOtherSubsidy() {
        return otherSubsidy;
    }

    public void setOtherSubsidy(BigDecimal otherSubsidy) {
        this.otherSubsidy = otherSubsidy;
    }

    public void setWsmpayId(Long wsmpayId)
    {
        this.wsmpayId = wsmpayId;
    }

    public Long getWsmpayId() 
    {
        return wsmpayId;
    }
    public void setUserName(String userName) 
    {
        this.userName = userName;
    }

    public String getUserName() 
    {
        return userName;
    }
    public void setUserNick(String userNick) 
    {
        this.userNick = userNick;
    }

    public String getUserNick() 
    {
        return userNick;
    }
    public void setModuleId(Long moduleId) 
    {
        this.moduleId = moduleId;
    }

    public Long getModuleId() 
    {
        return moduleId;
    }
    public void setWorkshopId(Long workshopId) 
    {
        this.workshopId = workshopId;
    }

    public Long getWorkshopId() 
    {
        return workshopId;
    }
    public void setGprocessId(Long gprocessId) 
    {
        this.gprocessId = gprocessId;
    }

    public Long getGprocessId() 
    {
        return gprocessId;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setWsmpayYear(String wsmpayYear) 
    {
        this.wsmpayYear = wsmpayYear;
    }

    public String getWsmpayYear() 
    {
        return wsmpayYear;
    }
    public void setWsmpayMonth(String wsmpayMonth) 
    {
        this.wsmpayMonth = wsmpayMonth;
    }

    public String getWsmpayMonth() 
    {
        return wsmpayMonth;
    }
    public void setWsmpayStart(Date wsmpayStart) 
    {
        this.wsmpayStart = wsmpayStart;
    }

    public Date getWsmpayStart() 
    {
        return wsmpayStart;
    }
    public void setWsmpayEnd(Date wsmpayEnd) 
    {
        this.wsmpayEnd = wsmpayEnd;
    }

    public Date getWsmpayEnd() 
    {
        return wsmpayEnd;
    }
    public void setBasicSalary(BigDecimal basicSalary) 
    {
        this.basicSalary = basicSalary;
    }

    public BigDecimal getBasicSalary() 
    {
        return basicSalary;
    }
    public void setLevelPay(BigDecimal levelPay) 
    {
        this.levelPay = levelPay;
    }

    public BigDecimal getLevelPay() 
    {
        return levelPay;
    }
    public void setPostPay(BigDecimal postPay) 
    {
        this.postPay = postPay;
    }

    public BigDecimal getPostPay() 
    {
        return postPay;
    }
    public void setGradePay(BigDecimal gradePay) 
    {
        this.gradePay = gradePay;
    }

    public BigDecimal getGradePay() 
    {
        return gradePay;
    }
    public void setEducationPay(BigDecimal educationPay) 
    {
        this.educationPay = educationPay;
    }

    public BigDecimal getEducationPay() 
    {
        return educationPay;
    }
    public void setWorkAllowance(BigDecimal workAllowance) 
    {
        this.workAllowance = workAllowance;
    }

    public BigDecimal getWorkAllowance() 
    {
        return workAllowance;
    }
    public void setPersonalPerformance(BigDecimal personalPerformance) 
    {
        this.personalPerformance = personalPerformance;
    }

    public BigDecimal getPersonalPerformance() 
    {
        return personalPerformance;
    }
    public void setDeptPerformance(BigDecimal deptPerformance) 
    {
        this.deptPerformance = deptPerformance;
    }

    public BigDecimal getDeptPerformance() 
    {
        return deptPerformance;
    }
    public void setFixedSalary(BigDecimal fixedSalary) 
    {
        this.fixedSalary = fixedSalary;
    }

    public BigDecimal getFixedSalary() 
    {
        return fixedSalary;
    }
    public void setTotalReward(BigDecimal totalReward) 
    {
        this.totalReward = totalReward;
    }

    public BigDecimal getTotalReward() 
    {
        return totalReward;
    }
    public void setWorkingAge(Integer workingAge) 
    {
        this.workingAge = workingAge;
    }

    public Integer getWorkingAge() 
    {
        return workingAge;
    }
    public void setAgeBase(BigDecimal ageBase) 
    {
        this.ageBase = ageBase;
    }

    public BigDecimal getAgeBase() 
    {
        return ageBase;
    }
    public void setAgeAllpay(BigDecimal ageAllpay) 
    {
        this.ageAllpay = ageAllpay;
    }

    public BigDecimal getAgeAllpay() 
    {
        return ageAllpay;
    }
    public void setAgePay(BigDecimal agePay) 
    {
        this.agePay = agePay;
    }

    public BigDecimal getAgePay() 
    {
        return agePay;
    }
    public void setMealAllowance(BigDecimal mealAllowance) 
    {
        this.mealAllowance = mealAllowance;
    }

    public BigDecimal getMealAllowance() 
    {
        return mealAllowance;
    }
    public void setMealBase(BigDecimal mealBase) 
    {
        this.mealBase = mealBase;
    }

    public BigDecimal getMealBase() 
    {
        return mealBase;
    }
    public void setHighTemperature(BigDecimal highTemperature) 
    {
        this.highTemperature = highTemperature;
    }

    public BigDecimal getHighTemperature() 
    {
        return highTemperature;
    }
    public void setEarlyNum(Integer earlyNum) 
    {
        this.earlyNum = earlyNum;
    }

    public Integer getEarlyNum() 
    {
        return earlyNum;
    }
    public void setEarlyBase(BigDecimal earlyBase) 
    {
        this.earlyBase = earlyBase;
    }

    public BigDecimal getEarlyBase() 
    {
        return earlyBase;
    }
    public void setEarlyShift(BigDecimal earlyShift) 
    {
        this.earlyShift = earlyShift;
    }

    public BigDecimal getEarlyShift() 
    {
        return earlyShift;
    }
    public void setNightNum(Integer nightNum) 
    {
        this.nightNum = nightNum;
    }

    public Integer getNightNum() 
    {
        return nightNum;
    }
    public void setNightBase(BigDecimal nightBase) 
    {
        this.nightBase = nightBase;
    }

    public BigDecimal getNightBase() 
    {
        return nightBase;
    }
    public void setNightShift(BigDecimal nightShift) 
    {
        this.nightShift = nightShift;
    }

    public BigDecimal getNightShift() 
    {
        return nightShift;
    }
    public void setOvertimeAllallowance(BigDecimal overtimeAllallowance) 
    {
        this.overtimeAllallowance = overtimeAllallowance;
    }

    public BigDecimal getOvertimeAllallowance() 
    {
        return overtimeAllallowance;
    }
    public void setOvertimeAllowance(BigDecimal overtimeAllowance) 
    {
        this.overtimeAllowance = overtimeAllowance;
    }

    public BigDecimal getOvertimeAllowance() 
    {
        return overtimeAllowance;
    }
    public void setWagePayable(BigDecimal wagePayable) 
    {
        this.wagePayable = wagePayable;
    }

    public BigDecimal getWagePayable() 
    {
        return wagePayable;
    }
    public void setProvidentFund(BigDecimal providentFund) 
    {
        this.providentFund = providentFund;
    }

    public BigDecimal getProvidentFund() 
    {
        return providentFund;
    }
    public void setSocialSecurity(BigDecimal socialSecurity) 
    {
        this.socialSecurity = socialSecurity;
    }

    public BigDecimal getSocialSecurity() 
    {
        return socialSecurity;
    }
    public void setTaxDeduction(BigDecimal taxDeduction) 
    {
        this.taxDeduction = taxDeduction;
    }

    public BigDecimal getTaxDeduction() 
    {
        return taxDeduction;
    }
    public void setNetSalary(BigDecimal netSalary) 
    {
        this.netSalary = netSalary;
    }

    public BigDecimal getNetSalary() 
    {
        return netSalary;
    }
    public void setFullDay(BigDecimal fullDay) 
    {
        this.fullDay = fullDay;
    }

    public BigDecimal getFullDay() 
    {
        return fullDay;
    }
    public void setAttendanceDay(BigDecimal attendanceDay) 
    {
        this.attendanceDay = attendanceDay;
    }

    public BigDecimal getAttendanceDay() 
    {
        return attendanceDay;
    }
    public void setAbsenceDay(BigDecimal absenceDay) 
    {
        this.absenceDay = absenceDay;
    }

    public BigDecimal getAbsenceDay() 
    {
        return absenceDay;
    }
    public void setAttendancePay(BigDecimal attendancePay) 
    {
        this.attendancePay = attendancePay;
    }

    public BigDecimal getAttendancePay() 
    {
        return attendancePay;
    }

    public SlWsperformance getSlWsperformance() {
        return slWsperformance;
    }

    public void setSlWsperformance(SlWsperformance slWsperformance) {
        this.slWsperformance = slWsperformance;
    }

    public Date getWsmpayDate() {
        return wsmpayDate;
    }

    public void setWsmpayDate(Date wsmpayDate) {
        this.wsmpayDate = wsmpayDate;
    }

    public String getIsHistory() {
        return isHistory;
    }

    public void setIsHistory(String isHistory) {
        this.isHistory = isHistory;
    }

    public Long getLevelId() {
        return levelId;
    }

    public void setLevelId(Long levelId) {
        this.levelId = levelId;
    }

    public Long getSsmId() {
        return ssmId;
    }

    public void setSsmId(Long ssmId) {
        this.ssmId = ssmId;
    }

    public BigDecimal getDmAmount() {
        return dmAmount;
    }

    public void setDmAmount(BigDecimal dmAmount) {
        this.dmAmount = dmAmount;
    }

    @Override
    public String toString() {
        return "SlMonthWs{" +
                "wsmpayId=" + wsmpayId +
                ", userName='" + userName + '\'' +
                ", userNick='" + userNick + '\'' +
                ", moduleId=" + moduleId +
                ", workshopId=" + workshopId +
                ", gprocessId=" + gprocessId +
                ", deptId=" + deptId +
                ", wsmpayYear='" + wsmpayYear + '\'' +
                ", wsmpayMonth='" + wsmpayMonth + '\'' +
                ", wsmpayStart=" + wsmpayStart +
                ", wsmpayEnd=" + wsmpayEnd +
                ", basicSalary=" + basicSalary +
                ", levelPay=" + levelPay +
                ", postPay=" + postPay +
                ", gradePay=" + gradePay +
                ", educationPay=" + educationPay +
                ", workAllowance=" + workAllowance +
                ", personalPerformance=" + personalPerformance +
                ", deptPerformance=" + deptPerformance +
                ", fixedSalary=" + fixedSalary +
                ", totalReward=" + totalReward +
                ", workingAge=" + workingAge +
                ", ageBase=" + ageBase +
                ", ageAllpay=" + ageAllpay +
                ", agePay=" + agePay +
                ", mealAllowance=" + mealAllowance +
                ", mealBase=" + mealBase +
                ", highTemperature=" + highTemperature +
                ", earlyNum=" + earlyNum +
                ", earlyBase=" + earlyBase +
                ", earlyShift=" + earlyShift +
                ", nightNum=" + nightNum +
                ", nightBase=" + nightBase +
                ", nightShift=" + nightShift +
                ", overtimeAllallowance=" + overtimeAllallowance +
                ", overtimeAllowance=" + overtimeAllowance +
                ", wagePayable=" + wagePayable +
                ", providentFund=" + providentFund +
                ", socialSecurity=" + socialSecurity +
                ", taxDeduction=" + taxDeduction +
                ", netSalary=" + netSalary +
                ", fullDay=" + fullDay +
                ", attendanceDay=" + attendanceDay +
                ", absenceDay=" + absenceDay +
                ", attendancePay=" + attendancePay +
                ", wsmpayDate=" + wsmpayDate +
                ", levelId=" + levelId +
                ", ssmId=" + ssmId +
                ", isHistory='" + isHistory + '\'' +
                ", dmAmount=" + dmAmount +
                ", slWsperformance=" + slWsperformance +
                '}';
    }
}
